Čauves,
potřebuji poradit s použitím šablon a polí v C++.
Stručně: Mám šablonu pro funkci, která mi má naplnit pole, jako argument funkce mám referenci na pole, velikost pole získávám pomocí size_t. Data do toho cpu ručně, ale vypisuje to blbosti.
Víc snad řekně zdroják.
.h soubor:
#ifndef PROTOTYP_HPP
#define PROTOTYP_HPP
#include <stddef.h>
template <class A, size_t size>
void max_prvek(A (&arr)[size], A &input);
#endif
.cpp kód samotné šablony fce.
#include <cstdlib>
#include <iostream>
#include <stddef.h>
#include "prototyp.hpp"
template <class A, size_t size>
void max_prvek(A (&arr)[size], A &input) {
A param;
input = param;
for(size_t i = 0; i < size; i++) {
arr[i] = param;
// std::cout << "Parametry: " << arr[i] << std::endl;
}
std::cout << "Parametry: " << arr[i] << std::endl;
};
a main .cpp:
#include <cstdlib>
#include <iostream>
#include "prototyp.hpp"
#include "max_prvek.cpp"
int main(int argc, char** argv) {
int size_ar;
int array[size_ar];
int inputs_par;
std::cout << "definujte velikost pole: " << std::endl;
std::cin >> size_ar;
std::cout << "Vlozte prvky pole: " << std::endl;
std::cin >> inputs_par;
max_prvek(array, inputs_par);
return 0;
}
Nechci, aby to někdo řešil za mne, ale chci, aby mi někdo pomohl objasnit kde dělám chybu a jak jim předejít při použití šablon. Já tohle z ANSI C neznám...