modified passing by value to passing by const reference
This commit is contained in:
@@ -14,7 +14,7 @@ FFLayer::~FFLayer()
|
||||
}
|
||||
}
|
||||
|
||||
FFNeuron& FFLayer::operator[](size_t neuron)
|
||||
FFNeuron& FFLayer::operator[](const size_t& neuron)
|
||||
{
|
||||
if(neurons==nullptr)
|
||||
{
|
||||
@@ -203,7 +203,7 @@ Solution FeedForward::solve(const Problem& p)
|
||||
return ret;
|
||||
}
|
||||
|
||||
FFLayer& FeedForward::operator[](size_t l)
|
||||
FFLayer& FeedForward::operator[](const size_t& l)
|
||||
{
|
||||
if(ffLayers==nullptr)
|
||||
{
|
||||
|
||||
@@ -35,14 +35,14 @@ namespace NeuronNetwork
|
||||
FFNeuron(float &pot, float *w, float &s, float &i,float lam):potential(pot),weights(w),sum(s),inputs(i),lambda(lam) { }
|
||||
|
||||
inline virtual float getPotential() const override {return potential;}
|
||||
inline virtual void setPotential(float p) { potential=p;}
|
||||
inline virtual void setPotential(const float& p) override { potential=p;}
|
||||
|
||||
inline virtual float getWeight(size_t i ) const override { return weights[i];}
|
||||
inline virtual void setWeight(size_t i,float p) override { weights[i]=p; }
|
||||
inline virtual float getWeight(const size_t& i ) const override { return weights[i];}
|
||||
inline virtual void setWeight(const size_t& i,const float &p) override { weights[i]=p; }
|
||||
|
||||
inline virtual float output() const { return sum; }
|
||||
inline virtual float input() const { return inputs; }
|
||||
inline virtual float derivatedOutput() const { return lambda*output()*(1.0-output()); }
|
||||
inline virtual float output() const override { return sum; }
|
||||
inline virtual float input() const override { return inputs; }
|
||||
inline virtual float derivatedOutput() const override { return lambda*output()*(1.0-output()); }
|
||||
protected:
|
||||
float &potential;
|
||||
float *weights;
|
||||
@@ -61,7 +61,7 @@ namespace NeuronNetwork
|
||||
FFLayer(const FFLayer &) = delete;
|
||||
FFLayer& operator=(const FFLayer &) = delete;
|
||||
|
||||
virtual FFNeuron& operator[](size_t layer) override;
|
||||
virtual FFNeuron& operator[](const size_t& layer) override;
|
||||
inline virtual size_t size() const override {return layerSize;};
|
||||
protected:
|
||||
FFNeuron **neurons=nullptr;
|
||||
@@ -84,7 +84,7 @@ namespace NeuronNetwork
|
||||
|
||||
virtual Solution solve(const Problem& p) override;
|
||||
virtual size_t size() const override { return layers;};
|
||||
virtual FFLayer& operator[](size_t l) override;
|
||||
virtual FFLayer& operator[](const size_t& l) override;
|
||||
protected:
|
||||
void solvePart(float *newSolution, size_t begin, size_t end,size_t prevSize, float* sol,size_t layer);
|
||||
private:
|
||||
|
||||
@@ -20,7 +20,7 @@ namespace NeuronNetwork
|
||||
{
|
||||
public:
|
||||
virtual ~Layer() {};
|
||||
virtual Neuron& operator[](size_t neuron)=0;
|
||||
virtual Neuron& operator[](const size_t& neuron)=0;
|
||||
virtual size_t size() const=0;
|
||||
};
|
||||
|
||||
@@ -31,7 +31,7 @@ namespace NeuronNetwork
|
||||
virtual ~Network() {};
|
||||
|
||||
virtual Solution solve(const Problem&)=0;
|
||||
virtual Layer& operator[](size_t layer)=0;
|
||||
virtual Layer& operator[](const size_t &layer)=0;
|
||||
inline float getLambda() const {return lambda;}
|
||||
|
||||
inline virtual void setThreads(const unsigned&t) final {threads=t;}
|
||||
|
||||
@@ -13,10 +13,10 @@ namespace NeuronNetwork
|
||||
Neuron() {};
|
||||
virtual ~Neuron() {};
|
||||
virtual float getPotential() const =0;
|
||||
virtual void setPotential(float p) =0;
|
||||
virtual void setPotential(const float &p) =0;
|
||||
|
||||
virtual float getWeight(size_t) const =0;
|
||||
virtual void setWeight(size_t i,float p) =0;
|
||||
virtual float getWeight(const size_t&) const =0;
|
||||
virtual void setWeight(const size_t& i,const float &p) =0;
|
||||
|
||||
virtual float output() const =0;
|
||||
virtual float input() const=0;
|
||||
|
||||
Reference in New Issue
Block a user