Các anh/chị cho em hỏi là làm như thế nào đề truyền nhiều tham số vào 1 hàm vậy ạ?
Kiểu như là nó không bị giới hạn bởi 1 hay 2 tham số mà mình muốn truyền bao nhiêu cũng được ạ, =-=’
E cảm ơn nhiều =-=’
Các anh/chị cho em hỏi là làm như thế nào đề truyền nhiều tham số vào 1 hàm vậy ạ?
Kiểu như là nó không bị giới hạn bởi 1 hay 2 tham số mà mình muốn truyền bao nhiêu cũng được ạ, =-=’
E cảm ơn nhiều =-=’
C++ có vararg
nhưng ko truyền tham biến được.
Có thể dùng std::initializer_list<>, variadic template arguments, fold expressions, hoặc variadic arguments. Cách cuối ít được khuyến khích nhất (theo mình).
C++17 với fold expression
#include <iostream>
template <typename... T> void foo(T &&... t)
{
((std::cout << t << ' '), ...) << std::endl;
}
int main()
{
foo(1, 2, 3, 42, 6.66, "Chicago", "Whistler", "Neptune");
}
C++11 với std::initializer_list<>
#include <initializer_list>
template <typename T>
void foo(const std::initializer_list<T> &il)
{
for (const auto &&a : il)
std::cout << a << '\n';
std::cout << std::flush;
}
int main()
{
foo<int>({1, 2, 3, 4, 5, 6});
foo<const char *>({"New York", "Chicago", "Dallas", "Pennsylvania"});
}
vậy nếu mình muốn truyền nhiều tham chiếu vào hàm thì làm như thế nào ạ? =-=’
Thì ngay tại phần tham biến bạn thêm & là được rồi. C++ căn bản mà :-ss
Câu này mình đã hỏi một lập trình viên C++ ở Cốc Cốc anh ý trả lời là truyền struct vào hàm nha 
A post was merged into an existing topic: Topic chứa các reply được cho là off-topic - version 2
Nếu là struct thì bạn sẽ rất vất vả khi thêm một đối tượng mới, tuy nhiên nhàn ở khoản dữ liệu động.
83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?