在Ubuntu中,使用C++模板編程非常簡單。模板是C++的一種特性,它允許你編寫通用的、可重用的代碼。模板可以用于函數和類。
以下是一個簡單的C++模板示例:
main.cpp
的文件,并在其中輸入以下代碼:#include <iostream>
// 函數模板
template <typename T>
T add(T a, T b) {
return a + b;
}
// 類模板
template <typename T>
class Array {
private:
T *data;
int size;
public:
Array(int size) {
this->size = size;
data = new T[size];
}
~Array() {
delete[] data;
}
void set(int index, T value) {
data[index] = value;
}
T get(int index) const {
return data[index];
}
};
int main() {
// 使用函數模板
int sum_int = add<int>(3, 4);
double sum_double = add<double>(3.5, 4.5);
std::cout << "Sum of integers: " << sum_int << std::endl;
std::cout << "Sum of doubles: " << sum_double << std::endl;
// 使用類模板
Array<int> int_array(5);
int_array.set(0, 1);
int_array.set(1, 2);
int_array.set(2, 3);
int_array.set(3, 4);
int_array.set(4, 5);
std::cout << "Array elements: ";
for (int i = 0; i < 5; ++i) {
std::cout << int_array.get(i) << " ";
}
std::cout << std::endl;
return 0;
}
這個示例中,我們定義了一個函數模板add
和一個類模板Array
。在main
函數中,我們分別使用了這兩個模板。
main.cpp
文件:g++ -o main main.cpp
./main
輸出結果:
Sum of integers: 7
Sum of doubles: 8
Array elements: 1 2 3 4 5
這就是在Ubuntu中使用C++模板編程的基本方法。你可以根據自己的需求創建更多的模板函數和類。